import random
# 定义聊天机器人的回复
responses = {"普通问候": ["你好呀！", "您好！", "你好哦！",'hello!','哈哈哈'],
             "问候早": ["早上好", "早安", "早上好，吃早餐了吗？"],
             "问候中": ['中午好',"下午好", "午安", '午安，您喜欢在午后睡觉吗？或者来杯红茶？'],
             "问候晚": ["晚上好", '晚好',"晚上好，一日工作结束，吃饭晚饭洗个澡好好休息吧。"],
             "介绍": ["我是你的好朋友！",'我暂时没有名字哦，也许以后会有。','我更想知道你的名字。','我没有名字，随意称呼我就好。'],
             "天气": ["今天的天气吗？我看看……今天是个雨天呢？你喜欢下雨天吗？气温是15~22度，还是挺凉快的呢。", "“寂寞空庭春欲晚，梧桐树，三更雨。”",'你看到阴云密布的天空了吗？你听见淅淅沥沥的雨声了吗？','是我最喜欢的雨天呢。气温是15~22度。'],
             "情绪消极": ["这些负面的情绪会伤害你的身体哦，我还是希望你能开开心心的。", "请试着思考积极的事情，事情会变得更好的",'先冷静冷静哦，人生之不如意十有八九，习惯就好哦。'],
             "情绪积极":['看到你如此开心，我也为你高兴呢！','我很高兴能听到你和我分享这些','谢谢你愿意和我分享心情哦。','听上去你好像很开心，那就最好啦！'],
             '游戏正向':['好的结果都是值得庆祝的，今天就好好庆祝一下吧！','一定要保持这样的势头！','太好啦！为你高兴！','恭喜恭喜！','恭喜得偿所愿！'],
             '游戏负面':['失败并不可怕，关键是我们要从失败中学习，不断进步，最终取得胜利！','请相信自己，你有足够的能力和智慧来克服它！','没关系，否极泰来。','铳也有卡壳的时候，别在意嘛。','究竟是哪里搞错了呢？……'],
             'q1':['两个 上海和其他城市','你问王烁烁去，她知道的','截至2021年底，中国共有685个城市，详细建议百度哦~'],
             'q2':['莫欺少年穷','莫欺中年穷','莫欺老年穷','死者为大','盗墓者的眼泪'],
             'q3':['现在是学习时间哦~','你喜欢玩游戏是嘛？：）','阿伟你又在打电动哦？','适当放松挺好的哦~但是注意不要用眼过度了哦！','一寸光阴一寸金，寸金难买寸光阴'],
             '战争':['不管怎样，战争都不是好事','在战争中，谁赢了也许都不会有幸福','如果战争是答案，那么人类必须重新提出问题','和平是不同民族之间的友谊','和平是人类心灵的归宿'],
             '脏话':['说脏话并不能解决问题，反而会让情况更加恶化。请冷静地表达自己的想法和意见。','请注意用词，不要说不雅的话。','我们应该保持文明和礼貌，不要使用不得体的语言。','污秽的言语，一句不可出口。'],
             "再见": ["再见，祝您有愉快的一天！", "下次再聊！"],
             '状态':['现在你正在汇报你的程序，我正在展示你的结果','应该是在课上汇报吧？','在给路老师和同学们汇报呢！'],
             '引战':['嗯……感觉情况不太对哦？','欸？感觉风向不太对哦？','有一说一，我们换个话题吧。','感觉在往枪口上撞哦……'],
             '动漫':['动漫呀！我特别喜欢呢！','这个可有的聊了','这可是我擅长的领域哦。'],
             '电影':['您需要电影推荐嘛？','如果想要看电影的话可以去豆瓣TOP250哦！','您喜欢看电影嘛？','这个可有的聊了哦'],
             '喜好':['抱歉，我只是一个简单的程序，没有其他喜好','我的喜好嘛？我的喜好是喜欢你。']}

# 定义关键词
keywords = {"问候早": ["早上好", "早安"],
            "问候中": ["下午好", "午安"],
            "问候晚": ["晚上好", '晚好'],
            "普通问候": ["你好", "您好",'hello','吃了吗'],
            "介绍": ["你叫什么", "你是谁",'你的名字是','名字','是谁','称呼','你是？','你谁','你哪位','哪位'],
            "天气": ["天气", "气温", "天气怎么样",'weather','温度','外面天气'],
            "情绪积极": ["开心", "高兴", "兴奋",'幸福','快乐','满足','happy','满意','有趣','哈哈'],
            "情绪消极":['难过','哭','悲伤','打人','生气','委屈','杀人','无语','疲惫','无趣','无聊','没通关','气死'],
            '游戏正向':['赢了','ssr','SSR','六星','涨了','通关了','成功','冠军'],
            '游戏负面':['输','R','三星','紫霞仙子','倒霉','运气差','失败'],
            'q1':['中国的城市','中国城市名称','中国有几座城市','哪些城市'],
            'q2':['我的人生','概括一下','一生改编成电影','电影名称'],
            'q3':['stellaris','群星','玩了','艾尔登法环','老头环','原神','明日方舟','王者荣耀'],
            '脏话':['你妈','你妹','狗屎','放屁','傻逼','傻子','弱智','低能','dinner','MD','md','垃圾玩意','你他妈的','垃圾'],
            '状态':['在干什么','现在在做什么','在干嘛'],
            '战争':['局势','军队','死伤','战争','作战','撤退'],
            '引战':['锐评','节奏','小鬼','捏！','超话','你行你上'],
            '动漫':['二次元','看动漫','动画片','番剧推荐','新番'],
             '电影':['电影','影片'],
            '喜好':['你喜欢','你爱','喜欢的东西']}
# 检测消息是否包含关键词
def detect_keywords(user_message):
    for keyword, keywords_list in keywords.items():
        for keyword_item in keywords_list:
            if keyword_item in user_message:
                return keyword
    return None

# 生成机器人的回复
def chat_response(keyword):
    if keyword in responses:
        return random.choice(responses[keyword])
    else:
        return "抱歉，因为我只是一个简单的聊天机器人程序，我没有办法回答您的所有问题。"

# 开始聊天
print("今天和我聊点什么呢？")
while True:
    user_input = input('user:')
    if user_input == "再见":
        print(chat_response("再见"))
        break
    elif '我爱你' in user_input:
        print("啊？？？？？？")
        break
    else:
        keyword = detect_keywords(user_input)
        if keyword is not None:
            print(chat_response(keyword))
        else:
            print("抱歉，因为我只是一个简单的聊天机器人程序，我没有办法回答您的所有问题。")